package net.hn.hnms.biz.equipment.service;

import net.hn.hnms.biz.equipment.domain.SynergiadataAbnormalPo;
import net.hn.hnms.biz.equipment.domain.dto.AbnormalDto;
import net.hn.hnms.biz.equipment.domain.dto.HisDto;
import net.hn.hnms.biz.equipment.domain.dto.NowDto;
import net.hn.hnms.biz.equipment.domain.dto.PointDto;
import net.hn.hnms.biz.equipment.domain.vo.ChartDateVo;
import net.hn.hnms.biz.equipment.domain.vo.HisVo;
import net.hn.hnms.biz.equipment.domain.vo.NowVo;
import net.hn.hnms.biz.equipment.domain.vo.PointHistoryListVo;
import net.hn.hnms.sys.common.core.domain.ResponsePage;
import net.hn.hnms.sys.common.mybatis.core.page.PageQuery;
import net.hn.hnms.sys.common.mybatis.core.page.TableDataInfo;

import java.util.List;

public interface CompressorealService {
    /**
     * 分页条件查询实时数据
     * @param pageQuery
     * @param nowDTO
     * @return
     */
    ResponsePage<NowVo> pageNowList(PageQuery pageQuery, NowDto nowDTO);

    /**
     * 分页条件查询报警明细
     * @param pageQuery
     * @param abnormalDTO
     * @return
     */
    TableDataInfo<SynergiadataAbnormalPo> pageAbnormalInfo(PageQuery pageQuery, AbnormalDto abnormalDTO);

    /**
     * 分页条件查询历史数据
     * @param pageQuery
     * @param hisDTO
     * @return
     */
    ResponsePage<HisVo> pageHistoryInfo(PageQuery pageQuery, HisDto hisDTO);

    /**
     * 获取所属设备下拉列表
     * @return
     */
    List<String> categoryList(String mineCode);

    /**
     * 获取设备位置下拉列表
     * @return
     */
    List<String> deviceLocaltionList(String mineCode);

    /**
     * 条件查询历史数据测点曲线
     * @param pointDto
     * @return
     */
    ChartDateVo pointHistoryCurve(PointDto pointDto);

    /**
     * 条件查询历史数据测点列表
     * @param pointDto
     * @return
     */
    List<PointHistoryListVo> pointHistoryList(PointDto pointDto);

    /**
     * 空压机运行台数
     * @return
     */
    Integer getRunCount();
}
